The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for an out-of-band virtual machine monitoring framework and a hybrid monitoring model that combines an in-band virtual machine agent and an out-of-band virtual machine introspection-based monitoring technique.
Cloud computing is a phrase used to describe a variety of computing concepts that involve a large number of computers connected through a real-time communication network such as the Internet. In science, cloud computing is a synonym for distributed computing over a network, and means the ability to run a program or application on many connected computers at the same time. The phrase also more commonly refers to network-based services, which appear to be provided by real server hardware, and are in fact served up by virtual hardware, simulated by software running on one or more real machines. Such virtual servers do not physically exist and can therefore be moved around and scaled up or down on the fly without affecting the end user.
A virtual machine (VM) is a software implementation of a machine (i.e., a computer or server) that executes programs like a physical machine. A virtual machine provides a complete system platform which supports the execution of a complete operating system (OS). A VM may emulate an existing architecture. A VM may be built with the purpose of providing a platform to run programs where the real hardware is not available for use (e.g., executing software on otherwise obsolete platforms) or the purpose of having multiple instances of virtual machines leading to more efficient use of computing resources, both in terms of energy consumption and cost effectiveness.